2cac5b8229408dd20a10d308aa0dcffcca4e8156,src/main/java/org/eclipse/golo/compiler/JavaBytecodeUnionGenerator.java,JavaBytecodeUnionGenerator,makeMatchlikeTestMethod,#ClassWriter#UnionValue#boolean#,94
Before Change
Label allEquals = new Label();
Label notEqual = new Label();
String target = value.getPackageAndClass().toJVMType();
for (String member : value.getMembers()) {
mv.visitVarInsn(ALOAD, i);
mv.visitVarInsn(ALOAD, 0);
mv.visitFieldInsn(GETFIELD, target, member, "Ljava/lang/Object;");
After Change
if (value.hasMembers()) {
mv = classWriter.visitMethod(ACC_PUBLIC, methName, argsSignature(value.getMembers().size()) + "Z", null, null);
for (Member member : value.getMembers()) {
mv.visitParameter(member.getName(), ACC_FINAL);
}
mv.visitCode();
if (!result) {
mv.visitInsn(ICONST_0);
} else {
int i = 1;
Label allEquals = new Label();
Label notEqual = new Label();
String target = value.getPackageAndClass().toJVMType();
for (Member member : value.getMembers()) {
mv.visitVarInsn(ALOAD, i);
mv.visitVarInsn(ALOAD, 0);
mv.visitFieldInsn(GETFIELD, target, member.getName(), "Ljava/lang/Object;");